Formal specification and rapid prototyping: building in quality at the start
نویسنده
چکیده
Formal Methods for Software Engineering, although widely recognised in academe as of potential benefit to industry, have proved difficult to "sell", both to industry and to students. Building on a novel teaching approach at Coventry University, we present an integrated approach to formal specification and rapid prototyping that offers a real contribution to building in quality at the front end of the development lifecycle. The significance of formal specification and rapid prototyping for software development are discussed. An introduction is given to the functional programming language MirandaTM, the vehicle for our approach. An extended type structure is presented for Miranda, providing an executable specification language based on simple settheoretical structures. We are thus enabled to construct directly executable specifications which serve as rapid prototypes, useful for early requirements analysis and refinement. An explanatory example is presented to show the utility of the approach in building quality systems. Z text is included to show the applicability of the approach to formal specifications expressed in languages such as Z and VDM. The example is further used to describe our HCI-builder tool, which enables the user to quickly produce a functional user interface to her prototype application.
منابع مشابه
Web Service Choreography Verification Using Z Formal Specification
Web Service Choreography Description Language (WS-CDL) describes and orchestrates the services interactions among multiple participants. WS-CDL verification is essential since the interactions would lead to mismatches. Existing works verify the messages ordering, the flow of messages, and the expected results from collaborations. In this paper, we present a Z specification of WS-CDL. Besides ve...
متن کاملALGRES: An Extended Relational Database System for the Specification and Prototyping of Complex Applications
This paper illustrates by means of examples the functionalities offered by ALGRES: An advanced relational programming environment for the formal specification and rapid prototyping of data-intensive applications.
متن کاملA comparison of languages which operationalize and formalize KADS models of expertise
In the field of Knowledge Engineering, dissatisfaction with the rapid-prototyping approach has led to a number of more principled methodologies for the construction of knowledgebased systems. Instead of immediately implementing the gathered and interpreted knowledge in a given implementation formalism according to the rapid-prototyping approach, many such methodologies centre around the notion ...
متن کاملTowards Quality of Software in TUG
The quality of software depends on the effectiveness of the software development process. Existing software development processes are still not flexible or practical enough for developing a system that requires a mix of existing processes to be used in the production of that system. In this paper, a formal specification language, called TUG (Tree with Unified Grammar), is presented to support a...
متن کاملA Comparison of Languages which Operationalise and Formalise KADS Models of Expertise
In the field of Knowledge Engineering, dissatisfaction with the rapid-prototyping approach has led to a number of more principled methodologies for the construction of knowledgebased systems. Instead of immediately implementing the gathered and interpreted knowledge in a given implementation formalism according to the rapid-prototyping approach, many such methodologies centre around the notion ...
متن کامل